CLS T_INIT FOR K = 1 TO 180 STEP 15 FOR J = 0 TO 36000 STEP 360/K CLS T_PEN = 1 FOR N = 1 TO 200 T_FD 5 + N T_RT 15 + J/1000 T_FD 10 + N T_RT J NEXT N T_PEN = 0 T_HOME NEXT J NEXT K END ':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 'GRAPH TURTLE 'VARIABLES 'T_X : DISTANCE IN PIXELS 'T_Y : DISTANCE IN PIXELS 'T_DISTANCE : DISTANCE IN PIXELS 'T_PEN : 0 = PEN OFF 1 = PEN ON 'T_ANGLE : ANGLE IN DEGREES SUB T_INIT 'INIT GRAPH TURTLE T_W = XMAX T_H = YMAX T_CENTER_SCREEN_X = INT (T_W / 2) T_CENTER_SCREEN_Y = INT (T_H / 2) T_POSITION_X = T_CENTER_SCREEN_X T_POSITION_Y = T_CENTER_SCREEN_Y T_HEADING = 0 T_PEN = 1 END SUB T_GT (T_X,T_Y) 'GO TO NEW POSITION X,Y PIXELS T_NEW_POSITION_X = T_CENTER_SCREEN_X + T_X T_NEW_POSITION_Y = T_CENTER_SCREEN_Y + T_Y IF T_PEN = 1 THEN LINE T_POSITION_X, T_POSITION_Y, T_NEW_POSITION_X, T_NEW_POSITION_Y T_POSITION_X = T_NEW_POSITION_X T_POSITION_Y = T_NEW_POSITION_Y END SUB T_HOME 'GO HOME TURTLE IF T_PEN = 1 THEN LINE T_POSITION_X, T_POSITION_Y, T_CENTER_SCREEN_X,T_CENTER_SCREEN_Y T_POSITION_X = INT(T_W/2) T_POSITION_Y = INT(T_H/2) END SUB T_FD (T_DISTANCE) 'FORWARD X DISTANCE PIXELES T_NEW_POSITION_X = T_POSITION_X + (T_DISTANCE * SIN (T_HEADING)) T_NEW_POSITION_Y = T_POSITION_Y - (T_DISTANCE * COS (T_HEADING)) IF T_PEN = 1 THEN LINE T_POSITION_X, T_POSITION_Y, T_NEW_POSITION_X,T_NEW_POSITION_Y T_POSITION_X = T_NEW_POSITION_X T_POSITION_Y = T_NEW_POSITION_Y END SUB T_BK(T_DISTANCE) 'BACK X DISTANCE PIXELES T_NEW_POSITION_X = T_POSITION_X - ( T_DISTANCE * SIN (T_HEADING)) T_NEW_POSITION_Y = T_POSITION_Y + ( T_DISTANCE * COS (T_HEADING)) IF T_PEN = 1 THEN LINE T_POSITION_X, T_POSITION_Y, T_NEW_POSITION_X,T_NEW_POSITION_Y T_POSITION_X = T_NEW_POSITION_X T_POSITION_Y = T_NEW_POSITION_Y END FUNC T_RT (T_ANGLE) 'TURN RIGHT, ANGLE DEGREES T_HEADING = T_HEADING + RAD (T_ANGLE) END FUNC T_LT (T_ANGLE) 'TURN LEFT, ANGLE DEGREES T_HEADING = T_HEADING - RAD (T_ANGLE) END FUNC T_ORIENT (T_ANGLE) 'SET ORIENTATION TURTLE ANGLE DEGREES T_HEADING = RAD (T_ANGLE) END